package plp.expressions2.memory;

import java.util.HashMap;
import java.util.Stack;

import plp.expressions2.expression.Id;
import plp.expressions2.expression.Valor;
import plp.expressions2.memory.ListaValor;


public class ContextoExecucaoConcorrente extends Contexto<Valor> implements AmbienteExecucao {
	
    private ListaValor saida = new ListaValor();

	
	@Override
	public ContextoExecucaoConcorrente clone() throws CloneNotSupportedException {
		ContextoExecucaoConcorrente c = new ContextoExecucaoConcorrente();
		c.setPilha((Stack<HashMap<Id, Valor>>) super.getPilha().clone());
		return c;
	}
	
	public Stack<HashMap<Id, Valor>> getPilha(){
		return super.getPilha();
	}

    public ListaValor getSaida() {
        return saida;    
    }
     
    public void write(Valor v){
    	saida.write(v);
    }
	
}